System and method for echo cancellation

ABSTRACT

An apparatus and method for canceling an echo signal is disclosed. The apparatus includes an echo filter, an up-sampler, an interpolation filter, and a signal combining apparatus. The echo filter filters the transmitted signal, the up-sampler up-samples the output of the echo filter, the interpolation filter filters the up-sampled output to generate a signal that emulates the echo signal, and the signal combining apparatus combines the signal emulating the echo signal with the received signal to remove echo signal. The method estimates an impulse response of the echo channel for estimation of filter coefficients of an echo filter. The transmit signal is then filtered in the echo filter to generate an output, which is up-sampled to generate another output. The up-sampled output is filtered by the interpolation filter to generate a signal that emulates the echo signal, which is then combined with the received signal to cancel the echo signal.

BACKGROUND

The present invention relates generally to systems and methods for echocancellation in data communication systems. In particular, the presentinvention relates to systems and methods for estimation of echo filtercoefficients, which are used for echo cancellation.

Echo cancellation finds application in various areas. One such area isthe field of multi-carrier data communications. Various multi-carriercommunication systems are utilized for transmission of data. One popularmulti-carrier technique utilized is Discrete Multi-Tone (DMT).Asymmetric Digital Subscriber Line (ADSL) is a standard that utilizesthe DMT technique for high-speed data communication over phone lines. Inthe ADSL standard, the rate of transmission and reception of data arenot equal. Other popular techniques utilized in multi-carrier systemsinclude Orthogonal Frequency Division Multiplexing (OFDM), and frequencydivision multiplexing (FDM).

Conventional data communication systems utilizing the above-mentionedtechniques typically include a Central Office (CO) terminal connectedthrough a physical medium to one or more Customer Premises Equipment(CPE). The physical medium includes copper cable, hybrid fiber,power-line, and wireless medium.

In order to enable communication between the data communication systems,cables and modems are utilized. The modems include necessary circuits,which are adapted to receive and transmit data through the cable. Themodem has a transmitter and a receiver that are coupled together througha hybrid circuit. In multi-carrier communication systems that employFrequency Division Multiplexed (FDM) sub-carriers to transmit dataacross a communication channel, an echo signal gets introduced in thereceived signal by the transmitted signal.

The echo signal is introduced in the received signal as a result of thetransients introduced in the received signal at frame boundaries.Although transmit and receive bands are separate, some amount oftransmit signal leaks into the receive band, thereby generating the echosignal.

The echo signal is introduced into the hybrid circuit through thetransmitter and is received along with the received signal at thereceiver. In order to enable a decipherable communication, the echosignal needs to be removed from the received signal. The methodologyinvolved in this process includes, reconstruction of the echo signal andecho signal compensation by combining the reconstructed echo signal withthe received signal.

Conventional systems and methods available for echo cancellation employcomplex training process and are generally not computationallyefficient. Further, these systems and methods do not cancel out the echosignal completely. Also, the training process used for estimating theecho filter coefficients is complex.

In light of the foregoing discussion, there is a need for a system andmethod that employs a simple training process, reduces computationaloverload, and provides perfect echo cancellation for enabling efficientcommunication.

SUMMARY

An object of the invention is to provide a computationally efficientapparatus and method for canceling out echo signal from datacommunication systems.

The present invention provides an apparatus and method for canceling anecho signal in a communication system. The apparatus disclosed in thepresent invention includes an echo filter, an up-sampler, aninterpolation filter, a down sampler, and a signal combining apparatus.The apparatus removes the echo signal from the data communicationsystem. The echo signal is removed by combining with a signal, whichemulates the echo signal, with the signal that is received by the datacommunication system.

The method disclosed in the present invention estimates an impulseresponse of the echo channel followed by estimation of filtercoefficients of an echo filter. The coefficients of the echo filter areestimated based on band-limited impulse response of the echo channel.The transmit signal, which is transmitted by the data communicationsystem, in the echo filter is then filtered to generate an echo filteroutput. The echo filter output is then up-sampled to generate anup-sampled output, which is filtered by the interpolation filter togenerate a signal that emulates the echo signal. The signal thatemulates the echo signal is then combined with the signal received bythe data communication system to cancel the echo signal.

BRIEF DESCRIPTION OF THE DRAWINGS

The preferred embodiments of the invention will hereinafter be describedin conjunction with the appended drawings provided to illustrate and notto limit the invention, wherein like designations denote like elements,and in which:

FIG. 1 is a block diagram illustrating customer premises equipment usedin a data communication system;

FIG. 2 is a block diagram illustrating an apparatus for echocancellation, in accordance with an exemplary embodiment of the presentinvention;

FIG. 3 is a block diagram illustrating an interpolation filter, inaccordance with an exemplary embodiment of the present invention;

FIG. 4 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention;

FIG. 5 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention;

FIG. 6 is a block diagram illustrating an echo filter, in accordancewith an exemplary embodiment of the present invention;

FIG. 7 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention;

FIG. 8 is a block diagram illustrating a high pass filter, in accordancewith an exemplary embodiment of the present invention;

FIG. 9 is a flowchart illustrating a method for canceling echo, inaccordance with an exemplary embodiment of the present invention;

FIG. 10 is a flowchart illustrating a method for estimating filtercoefficients of an echo filter, in accordance with an exemplaryembodiment of the present invention; and

FIG. 11 is a flowchart illustrating a method for estimating the impulseresponse of an echo signal, in accordance with an exemplary embodimentof the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention provides for an apparatus and method forcancellation of echo signal in data communication systems. The presentinvention generates a signal that is a replica of the echo signal thatgets introduced in the data communication system. This generated signalis then utilized to cancel out the echo signal from the received signalin a communication system. The invention performs a time domain echocancellation. In various embodiments, the invention may be implementedover communication systems operating over different kinds ofcommunication channels such as ADSL system.

FIG. 1 is a block diagram illustrating customer premises equipment usedin a data communication system. Customer premises equipment 100 includesa digital to analog converter (DAC) 102, a transmitter (Txr) 104, adigital echo canceller 106, a first signal combiner 108, an analog todigital converter (ADC)110, a receiver (Rxr) 112, a second signalcombiner 114, a hybrid circuit 116, and a line interface unit 118. Itshould be noted that Txr 104 is a near end transmitter. Customerpremises equipment 100 is connected to the data communication systemthrough a twisted pair 120.

The data samples that are required to be communicated are firstgenerated and fed to the DAC 102. At DAC 102, the data samples, whichare in digital form, are converted to analog signal and then fed to Txr104. Txr 104 amplifies the power of the analog signal so that it can betransmitted through line interface unit 118 and twisted pair 120 for alonger distance. Txr 104 may be an amplifier/buffer/power booster thatcan boost the power of the analog signal.

Similarly, analog signal that is received by customer premises equipment100 through twisted pair 120 and line interface unit 118 is fed to Rxr112. Rxr 112 amplifies the power of the input analog signal so that itmay be sampled using ADC 110 at adequate resolution, where it isconverted to digital signal, and processed. Rxr 112 may be anamplifier/buffer/power booster. It should be noted that Rxr 112 may alsoinclude data processing blocks, other than an amplifier block foramplifying the input analog signal, in accordance with variousembodiments of the invention.

First signal combiner 108 and second signal combiner 114 combine thesignals that these units are connected to, with appropriate polarity. Anecho signal is generated in the communication channel between Txr 104and Rxr 112. Hybrid circuit 116 is a device, which reduces the echosignal in Rxr 112, using an analog circuitry. Hybrid circuit 116 is aninterface between Txr 104 and Rxr 112. Hybrid circuit 116 is used toseparate signals of different frequency bands. Hybrid circuit 116matches the line impedance and reduces the echo signal prior to digitalecho canceller 106 being applied. Digital echo canceller 106 isconnected between the input of DAC 102 and output of ADC 110. Digitalecho canceller 106 is utilized for canceling the echo that is generatedin customer premises equipment 100. Digital echo canceller ishereinafter referred to as echo canceller.

In order to efficiently cancel the echo signal that is introduced in thedata communication system, an apparatus is introduced between thetransmitting side and the receiving side of the data communicationsystem. The apparatus is an echo canceller that cancels echo signal fromthe data communication system. The transmitting side of the datacommunication system is the transmitter that transmits data and thereceiving side is the one that receives data.

FIG. 2 is a block diagram illustrating an apparatus for echocancellation, in accordance with an exemplary embodiment of the presentinvention. An echo canceller 200 includes an echo filter 202, anup-sampler 204, an interpolation filter 206, and a signal combiningapparatus 208. The transmission of data is done at a transmit ratethrough a transmit signal and reception of data is done at a receiverate through a receive signal. The receive signal includes the echosignal, which is generated in the system.

It should be noted that the term ‘transmit rate’ indicates the basicrate at which data samples are generated and transmitted. It is to beunderstood that in general, ‘transmit rate’ is a term used to indicatethe rate at which digital words corresponding to analog voltages are fedto DAC 102. It should also be noted that ‘transmit rate’ might be sameas the data rate at which DAC 102 is fed, in cases where there may befilters, up-samplers, etc., before DAC 102.

Echo filter 202 is utilized for filtering a transmit signal, which isbeing communicated by the system, and to generate an output that isutilized in the generation of a replica of the echo signal. Thecoefficients of echo filter 202 are computed by estimating aband-limited impulse response of the echo channel. In an embodiment ofthe invention, the coefficients of echo filter are generated by downsampling the band-limited impulse response. The components of thedown-sampled band-limited impulse response are used to generate thecoefficients of echo filter 202. The down-sampling is done by a factorof the ratio between transmit and receive sample rate to get a set offilters that together constitute echo filter 202.

It is to be noted that band limiting the impulse response corresponds toretaining the impulse response in a required frequency band only. Theother components of the impulse response may be dropped.

In an embodiment of the present invention, echo filter 202 is anon-adaptive filter. In another embodiment of the present invention,echo filter 202 is an adaptive filter. It should be noted that anadaptive filter is a filter, the filter coefficients of which may beadjusted as per requirement. The filter coefficients of such filters maybe changed with time and hence the filter is termed as ‘adaptivefilter’. A non-adaptive filter is one that does not qualify as anadaptive filter, i.e., the filter coefficients of the filters may not bechanged once they are estimated initially. An exemplary method forcomputing the filter coefficients of echo filter 202 is described indetail in conjunction with FIG. 10.

Up-sampler 204 is utilized for up-sampling the output of echo filter202. Up-sampling is the process of increasing the rate of data samples.In an embodiment of the invention, up-sampling is done in order togenerate data samples at the receive rate, which is higher than thetransmit rate. The output of echo filter 202 is up-sampled by a factorequal to the ratio between the receive rate and the transmit rate.

In an embodiment of the invention, the up-sampling factor may be amultiple of the factor equal to the ratio between the receive rate andthe transmit rate. In an embodiment of the present invention, theup-sampling factor is twice the factor equal to the ratio between thereceive rate and the transmit rate. In another embodiment of the presentinvention, the up-sampling factor is four times the factor equal to theratio between the receive rate and the transmit rate. The up-samplingratio may also depend on the down-sampling factor that is used in adown-sampler utilized in the apparatus for echo cancellation.

In an embodiment of the present invention, the receive rate is greaterthan the transmit rate. It should be noted that the same invention maybe practiced for a receive rate that might be lower than the transmitrate. It is to be noted that up-sampler 204 is known in the art and itsimplementation should be apparent to a person skilled in the art.

The output of up-sampler 204 is fed to interpolation filter 206.Interpolation filter 206 is utilized for filtering the up-sampled outputof up-sampler 204 and it generates a signal that emulates the echosignal. Interpolation filter 206 may be implemented in several ways. Onesuch embodiment of interpolation filter is described in detail, inconjunction with FIG. 3.

The echo signal is removed by combining the emulated echo signal, whichis generated as an output of interpolation filter 206, with the receivedsignal that includes the echo signal. Signal combining apparatus 208 isutilized for combining the signal emulating the echo signal with thereceive signal. The output of signal combining apparatus 208 is a signalthat does not contain the echo signal and may be utilized as thereceived signal free of echo signal.

Various other embodiments and modifications are possible that may beimplemented from the above described apparatus. It is to be noted thatthe order in which the various components are connected together in theapparatus may also be changed in order to achieve desired functionality.

The various filters utilized in the apparatus for echo cancellation maybe implemented in the form of filter-banks to reduce computationalcomplexity of the apparatus and also to enhance efficiency during echocancellation in the data cancellation system. It is to be noted that afilter-bank is a set of filters connected in parallel, wherein eachfilter in the filter-bank operates on a part of the input signal that ismutually exclusive from other parts of the input signal that are beingoperated upon by other filters in the filter-bank. The filter-bankisolates different frequency components in the input signal. The outputof the filter-bank is a collective signal that is the sum of all theoutputs of each of the filters in the filter-bank. For example, afilter-bank may comprise a series of high pass and low pass filters torepeatedly divide the input frequency range. The high pass and the lowpass filters may be specified by specifying the filter coefficients.

FIG. 3 is a block diagram illustrating an interpolation filter, inaccordance with an exemplary embodiment of the present invention. Invarious embodiments of the present invention, an up-sampler followed byan Interpolation filter 300 is implemented in the form of filters-banksto reduce the computational load. Interpolation is a process of upsampling a signal followed by filtering. Examples of interpolationinclude linear interpolation, polynomial interpolation and splineinterpolation. Interpolation filter 300 is used for producing in-betweensamples using the original samples. Interpolation increases the samplingrate at the output of the system. Interpolation filter 300 includes afirst interpolation filter 302, a second interpolation filter 304, athird interpolation filter 306, and other interpolation filters up to aK^(th) interpolation filter 308. The filter bank of these interpolationfilters reduces the computational complexity and load of echo canceller.The output of each of the interpolation filters operating at a lowerrate is then taken and multiplexed to generate a composite data sampleat a receive rate.

FIG. 4 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention. An echo canceller 400 includes an up-sampler 402, anecho filter 404, an interpolation filter 406, and a signal combiningapparatus 408. The transmission of data is done at a transmit ratethrough a transmit signal and reception of data is done at a receiverate through a receive signal. The receive signal includes the echosignal, which is generated in the system.

Up-sampler 402 is utilized for up-sampling the transmit signal.Up-sampling is done in order to generate data samples at the receiverate, which is higher than the transmit rate in an embodiment of thepresent invention. The transmit signal is up-sampled by a factor equalto the ratio between the receive rate and the transmit rate.

Echo filter 404 is utilized for filtering the up-sampled transmitsignal, which is being communicated by the system, and to generate anoutput that is utilized in the generation of a replica of the echosignal. The coefficients of echo filter 404 are computed by estimating aband-limited impulse response of the echo channel. Echo filter 404 maybe implemented in several ways. One such embodiment of echo filter isdescribed in detail, in conjunction with FIG. 6.

The output of echo filter 404 is fed to interpolation filter 406.Interpolation filter 406 is utilized for filtering the output of echofilter 404 and it generates a signal that emulates the echo signal.

In an embodiment of the present invention, echo filter 404 andinterpolation filter 406 can be combined such that the combined filtergenerates a signal emulating the echo signal. In an embodiment of theinvention, the combined filter in combination with an up sampler can beimplemented efficiently in the form of a filter bank. An exemplarycombined filter is described in conjunction with FIG. 6.

The echo signal is removed by combining the emulated echo signal, whichis generated as an output of interpolation filter 406, with the receivedsignal that comprises the echo signal. Signal combining apparatus 408 isutilized for combining the signal emulating the echo signal with thereceive signal. The output of signal combining apparatus 408 is a signalthat does not contain the echo signal and may be utilized as thereceived signal free of echo signal.

FIG. 5 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention. An echo canceller 500 includes a high pass filter502, an up-sampler 504, an echo filter 506, an interpolation filter 508,and a signal combining apparatus 510. Echo canceller 500 is similar toecho canceller 400, however, echo canceller 500 has high pass filter 502unlike echo canceller 400. In an embodiment of the present invention,high pass filter 502 is one of a linear phase filter and a finiteimpulse response filter.

High pass filter 502 is utilized for filtering the transmit signal. Highpass filter 502 is employed to operate echo filter 506 at a higherprecision. The computational load handled by echo canceller 500 may begiven by:C=r _(t) *[n ₁(+)+n ₁(x)]+r _(r) *[n ₂(+)+n ₂(x)]  (1)where C is the computational load per frame, r_(t) is the number oftransmit samples per frame, r_(r) is the number of receiver samples perframe, n1 is the number of taps of the filter which is a combination ofecho filter and the interpolation filter, and n₂ is the number or highpass filter 502 taps. N(+) represents the number of addition operationsto be performed per frame, while N(x) represents the number ofmultiplication operations to be performed per frame.

The other components of echo canceller 500 are similar to thecorresponding components of echo canceller 400.

It should be noted that implementing echo filter 506 also as afilter-bank can further reduce the computational load.

FIG. 6 is a block diagram illustrating an echo filter 600, in accordancewith an exemplary embodiment of the present invention. Echo filter 600is implemented in the form of filters-banks to reduce the computationalload. Echo filter 600 includes a first echo filter 602, a second echofilter 604, a third echo filter 606, and other echo filters up to aK^(th) echo filter 608. The optimum number of filters in a filter-bankis estimated by the signal-to-noise ratio (SNR) desired in the system.Lesser number of filters provides lower value of SNR compared to highernumber of filters. The filter-bank of these echo filters reduces thecomputational complexity and load and help increase the efficiency ofecho canceller. The echo filters are connected in parallel with respectto the up-sampler output. Each echo filter is operated for generatingone output sample at the receive rate. The output of each of the echofilters is then multiplexed to generate a composite data sample at areceive rate. Each echo filter e_(i)(n) within echo filter 600 is givenby:

e_(i)(n),0<i<K, such that, e_(i)(n)=e(nK+i): i=0≦i<K, wherein e(n)represents echo filter 600.

The computational load handled by echo canceller 500 in this embodimentis given by:C=r _(t) *[n ₁(+)+n ₁(x)]+1/K*r _(r) *[n ₂(+)+n ₂(x)]  (2)where C is the computational load per frame, r_(t) is the number oftransmit samples per frame, r_(r) is the number of receiver samples perframe, n₁ is the number of taps of echo filter 506, n₂ is the number oftaps of high pass filter 502, and K is the up sampling factor. N(+)represents the number of addition operations to be performed per frame,while N(x) represents the number of multiplication operations to beperformed per frame.

FIG. 7 is a block diagram illustrating an apparatus for echocancellation, in accordance with yet another exemplary embodiment of thepresent invention. An echo canceller 700 includes a high pass filter702, a down-sampler 704, an up-sampler 706, an echo filter 708, aninterpolation filter 710, and a signal combining apparatus 712. Echocanceller 700 is similar to echo canceller 500, however, echo canceller700 has down-sampler 704 and a high pass filter unlike echo canceller500.

In an embodiment of the present invention, high pass filter 702 isimplemented using a second set of filters, where the filters in thesecond set of filters are given by:

h_(i)(n),0<i<such that h_(i)(n)=h(nP+i) i=0≦i<P where P is the downsampling factor.

Down-sampler 704 is utilized for down-sampling the output of high passfilter 702. The down-sampling factor is based on the ratio betweentransmit and receive sample rate and the frequency band of interest ofthe transmit signal. The other components of echo canceller 700 aresimilar to the corresponding components of echo canceller 500. Thecomputational load for this case is given by:C=r _(t) *[n ₁(+)+n ₁(x)]/P+1/K*r _(r) *[n ₂(+)+n ₂(x)]  (3)

where C is the computational load per frame, r_(t) is the number oftransmit samples per frame, r_(r) is the number of receiver samples perframe, n₁ is the number of 708 of echo filter taps, n₂ is the number oftaps of high pass filter 702, P is the down sampling factor, and K isthe upsampling factor. N(+) represents the number of addition operationsto be performed per frame, while N(x) represents the number ofmultiplication operations to be performed per frame. A typical value ofP and K are 4 and 16 respectively.

The apparatus described above may be implemented in other embodiments bycombining the various elements together. For example, echo filter 708and interpolation filter 710 may be combined together in a single filteror filter-bank to achieve similar functionality. It is to be noted thatvarious other such combinations of components is possible for theapparatus described above without diverting from the scope and spirit ofthe invention.

FIG. 8 is a block diagram illustrating a high pass filter 800, inaccordance with an exemplary embodiment of the present invention. Highpass filter 800 is implemented in the form of filters-banks to reducethe computational load. High pass filter 800 comprises a first high passfilter 802, a second high pass filter 804, a third high pass filter 806,and other high pass filters up to a K^(th) high pass filter 808. Thefilter bank implementation of the high pass filter and the down-samplerin combination reduces the computational complexity and load of echocanceller. The high pass filters are fed through an input multiplexerand the outputs of the different filters are added to generate oneoutput. The output of each of the high pass filters is then taken togenerate a composite data sample, which is fed to up-sampler 504. In anembodiment, the output of each of the high pass filters is taken togenerate a composite data sample, which is fed to down-sampler 704.

In various embodiments of the invention, each of the system elements canbe implemented in the form of hardware, software, firmware and theircombination thereof. In particular, they can be implemented in the formof integrated circuits as a part of application specific integratedcircuits (ASIC), System on Chip (SoC), and gate arrays. Further, theycan be implemented in a digital signal processor (DSP).

FIG. 9 is a flowchart illustrating the method for canceling echo, inaccordance with an exemplary embodiment of the present invention. Atstep 902, the impulse response of the echo channel is estimated. Anexemplary method for estimating the impulse response of the echo channelis described in conjunction with FIG. 11. Then at step 904, the filtercoefficients of an echo filter are estimated. In an embodiment of thepresent invention, echo filter coefficients are computed bydown-sampling the band limited impulse response of the echo channel by adown-sampling factor. In an embodiment of the invention, down-samplingis done by dropping a pre-determined number of samples of theband-limited impulse response of the echo channel. The step ofestimating the filter coefficients of the echo filter is described indetail, in conjunction with FIG. 10.

At step 906, the transmit signal is filtered in the echo filter togenerate an echo filter output. The echo filter output is thenup-sampled to generate an up-sampled output at step 908. Up-sampling ofthe echo filter output depends on the down-sampling factor, which isutilized for down-sampling the impulse response of the echo channel. Inan embodiment of the present invention, up-sampling of the echo filteroutput is done by a zero-filling operation.

In an embodiment of the present invention, up-sampling of the echofilter output depends on a ratio between the receive rate and thetransmit rate. For example, the up-sampling may be done by a factor ofthe ratio between the receive rate and the transmit rate or by a factortwice that value. The receive rate is greater than the transmit rate. Itshould be noted that the receive rate may also be equal to or less thanthe transmit rate.

Then at step 910, an interpolation filter is utilized for filtering theup-sampled output. The interpolation filter generates a signal thatemulates the echo signal. Then at step 912, the signal emulating theecho signal is combined with the received signal to cancel the echosignal.

It is to be noted that the sequence of steps 906-910 described above areexemplary. The sequence of steps can be modified without deviating fromthe sprit and scope of the various embodiments of the present invention.Further, some of the steps can be combined without deviating from thescope of the present invention.

FIG. 10 is a flowchart illustrating the method for estimating filtercoefficients of an echo filter, in accordance with an exemplaryembodiment of the present invention. At step 1002, the impulse responseof the echo channel is band-limited. In band-limiting, the range offrequency band of the impulse response, which is not required, isfiltered out. Then at step 104, the echo filter coefficients arecomputed based on a set of components of the band-limited impulseresponse of the echo channel. It is to be noted that the method of bandlimiting the impulse response is well known in the art and should beapparent to a person skilled in the art. For example, the impulseresponse may be limited to a required frequency band using a band-passfilter.

FIG. 11 is a flowchart illustrating the method for estimating theimpulse response of an echo signal, in accordance with an exemplaryembodiment of the present invention. At step 1102, a wide-band signal istransmitted from the near end transmitter. In an embodiment of thepresent invention, the wide-band signal includes a series of impulses.In another embodiment of the present invention, a frequency domain sweepsignal is used instead of the wide-band signal.

At step 1104, a response of the transmitted wide-band signal is receivedat the receiver in order to generate receiver samples. The receiversamples are then averaged at step 1106. In an embodiment of the presentinvention, averaging of samples is carried out on a frame-to-framebasis. It is to be noted that averaging of samples may be carried out inother ways as well. For example, averaging may be done on the basis oftwo frames at a time or an octet at a time.

Then at step 1108, the average of the receiver samples is transformed toa frequency domain representation. At step 1110, a frequency domainsignal is obtained by dividing the frequency domain representation ofthe average of receiver samples by a frequency domain representation ofthe transmitted signal. Then the frequency domain signal is band limitedat step 1112. At step 1114, a time domain representation of theband-limited frequency domain signal is obtained by inverse frequencydomain transformation.

The present invention provides a computationally efficient apparatus andmethod for removing echo signal from data communication systems. Thecomputational efficiency of the apparatus is achieved through theappropriate structure of the different filters used in a scheme of echocanceller. Another advantage of the invention is that the trainingprocess for identifying the coefficients of the echo filter is simpler.The training process by using a known wide band signal avoids the riskof divergence of the training process.

The various embodiments or components thereof may be implemented as partof a computer system. The computer system may include a computer, aninput device, a display unit and an interface, for example, foraccessing the Internet. The computer may include a microprocessor. Themicroprocessor may be connected to a communication bus. The computer mayalso include a memory. The memory may include Random Access Memory (RAM)and Read Only Memory (ROM). The computer system further may include astorage device, which may be a hard disk drive or a removable storagedrive such as a floppy disk drive, optical disk drive, and the like. Thestorage device can also be other similar means for loading computerprograms or other instructions into the computer system.

As used herein, the term “computer” may include any processor-based ormicroprocessor-based system including systems using microcontrollers,reduced instruction set circuits (RISC), application specific integratedcircuits (ASICs), logic circuits, and any other circuit or processorcapable of executing the functions described herein. The above examplesare exemplary only, and are thus not intended to limit in any way thedefinition and/or meaning of the term “computer”.

The computer system executes a set of instructions that are stored inone or more storage elements, in order to process input data. Thestorage elements may also hold data or other information as desired orneeded. The storage element may be in the form of an information sourceor a physical memory element within the processing machine.

The set of instructions may include various commands that instruct theprocessing machine to perform specific operations such as the processesof the various embodiments of the invention. The set of instructions maybe in the form of a software program. The software may be in variousforms such as system software or application software. Further, thesoftware may be in the form of a collection of separate programs, aprogram module within a larger program or a portion of a program module.The software also may include modular programming in the form ofobject-oriented programming. The processing of input data by theprocessing machine may be in response to user commands, or in responseto results of previous processing, or in response to a request made byanother processing machine.

As used herein, the terms “software” and “firmware” are interchangeable,and include any computer program stored in memory for execution by acomputer, including RAM memory, ROM memory, EPROM memory, EEPROM memory,and non-volatile RAM (NVRAM) memory. The above memory types areexemplary only, and are thus not limiting as to the types of memoryusable for storage of a computer program.

While the preferred embodiments of the invention have been illustratedand described, it will be clear that the invention is not limited tothese embodiments only. Numerous modifications, changes, variations,substitutions, and equivalents will be apparent to those skilled in theart without departing from the spirit and scope of the invention asdescribed in the claims.

1. Apparatus for canceling an echo signal in a communication system, thecommunication system comprising a near end transmitter and a receiver,the communication system transmitting data at a transmit rate through atransmit signal and receiving data at a receive rate through a receivesignal, the receive signal including the echo signal introduced by thetransmit signal, the apparatus comprising: a. at least one echo filterfor filtering the transmit signal to generate an output, coefficients ofthe at least one echo filter being generated by estimating aband-limited impulse response of an echo channel; b. at least oneup-sampler for up-sampling the output of the at least one echo filter;c. at least one interpolation filter for filtering the up-sampled outputto generate a signal that emulates the echo signal; and d. a signalcombining apparatus for combining the signal emulating the echo signaland the receive signal.
 2. The apparatus of claim 1 further comprises adown-sampler for down-sampling the band-limited impulse response,wherein components of the down-sampled band-limited impulse response areused for generating coefficients of the at least one echo filter.
 3. Theapparatus of claim 1, wherein the up-sampling of the output of at-leastone echo filter is carried out by a factor equal to the ratio betweenthe receive rate and the transmit rate.
 4. The apparatus of claim 1,wherein the at least one echo filter is a non-adaptive filter.
 5. Theapparatus of claim 1, wherein the at least one echo filter is anadaptive filter.
 6. The apparatus of claim 1, wherein the at least oneinterpolation filter is connected in parallel with respect to theup-sampled output, each of the at least one interpolation filtersgenerating output samples at the receive rate.
 7. The apparatus of claim1, wherein the receive rate is greater than the transmit rate. 8.Apparatus for canceling an echo signal in a communication system, thecommunication system comprising a near end transmitter and a receiver,the communication system transmitting data at a transmit rate through atransmit signal and receiving data at a receive rate through a receivesignal, the receive signal including the echo signal introduced by thetransmit signal, the apparatus comprising: a. at least one up-samplerfor up-sampling the transmit signal; b. at least one echo filter forfiltering the up-sampled transmit signal to generate an echo filteroutput, coefficients of the at least one echo filter being generated byestimating a band-limited impulse response of an echo channel; c. atleast one interpolation filter for filtering the echo filter output togenerate a signal that emulates the echo signal; and d. at least onesignal combining apparatus for combining the signal emulating the echosignal and the receive signal.
 9. The apparatus of claim 8 furthercomprises at least one high-pass filter for filtering the transmitsignal before feeding the transmit signal to the at least oneup-sampler.
 10. The apparatus of claim 9, wherein the at least onehigh-pass filter is at least one of a linear phase filter and a finiteimpulse response filter.
 11. The apparatus of claim 8, wherein the atleast one echo filter comprises a first set of filters connected inparallel, each of the first set of filters being operated for generatingone output sample at receive rate.
 12. The apparatus of claim 9 furthercomprises at least one down-sampler for down-sampling thehigh-pass-filtered transmit signal before feeding the high-pass-filteredtransmit signal to the at least one up-sampler.
 13. The apparatus ofclaim 9, wherein the at least one high-pass-filter comprises a secondset of filters, each filter of the second set of filters filteringmutually exclusive components of the transmit signal, an output of thesecond set of filters being generated, the generation of the output ofthe second set of filters comprising: a. feeding each filter of thesecond set of filters with one sample each to generate an output of eachfilter of the second set of filters; and b. adding the outputs of eachfilter of the second set of filters.
 14. A method of canceling an echosignal in a communication system, the communication system comprising anear end transmitter and a receiver, the echo signal being generated inan echo channel existing between the near end transmitter and thereceiver, the communication system transmitting data at a transmit ratethrough a transmit signal and receiving data at a receive rate through areceive signal, the receive signal including the echo signal introducedby the transmit signal, the method comprising the steps of: a.estimating an impulse response of the echo channel; b. estimating filtercoefficients of an echo filter, the step of estimating filtercoefficients of the echo filter comprising: i. band-limiting the impulseresponse of the echo channel; and ii. computing the echo filtercoefficients based on a set of components of the band-limited impulseresponse of the echo channel; c. filtering the transmit signal in theecho filter to generate an echo filter output; d. up-sampling the echofilter output to generate an up-sampled output; e. filtering theup-sampled output by using an interpolation filter to generate a signalthat emulates the echo signal; and f. combining the signal emulating theecho signal with the receive signal to cancel the echo signal.
 15. Themethod according to claim 14, wherein estimating the impulse response ofthe echo signal comprises the steps of: a. transmitting a wide-bandsignal from the near end transmitter; b. receiving a response of thetransmitted wide-band signal at the receiver to generate receiversamples; c. averaging the receiver samples; d. transforming the averageof the receiver samples to a frequency domain representation; e.obtaining a frequency domain signal by dividing the frequency domainrepresentation of the average of receiver samples by a frequency domainrepresentation of the transmitted signal; f. band-limiting the frequencydomain signal; and g. obtaining a time domain representation of theband-limited frequency domain signal by inverse frequency domaintransformation.
 16. The method of claim 15, wherein the wide-band signalcomprises a series of impulses.
 17. The method according to claim 14,wherein up-sampling of the echo filter output depends on a ratio betweenthe receive rate and the transmit rate.
 18. The method according toclaim 14, wherein computation of the echo filter coefficients is done bydown-sampling the band-limited impulse response of the echo channel by adown-sampling factor.
 19. The method according to claim 18, wherein thedown-sampling is done by dropping a pre-determined number of samples ofthe band-limited impulse response of the echo channel.
 20. The methodaccording to claim 18, wherein up-sampling of the echo filter outputdepends on the down-sampling factor.
 21. The method according to claim14, wherein the receive rate is greater than the transmit rate.
 22. Themethod according to claim 14, wherein up-sampling of the echo filteroutput is done by a zero-filling operation.
 23. The method according toclaim 14, wherein the method of canceling an echo signal in acommunication system is implemented as a computer program product.